
#ifndef PPD_FUNCIONES_H_
#define PPD_FUNCIONES_H_

#include"Estructuras.h"

char *map;
int32_t cantSectoresSincronizados;
int32_t flagSincronizacion;
int32_t tamanioDisco;
int32_t SockConsola;
sem_t Semaforo;
extern t_log *log;


void sigchld_handler(int32_t);

int32_t ServUnix(void);
int32_t CListen(void);

int32_t FuncionConsola(int32_t );
int32_t EncolarPeticion(int32_t);

int32_t leerDisco();
int32_t escribirSector(int32_t,char*);
int32_t leerSector(int32_t,char *);
int32_t obtenerSectoresRecorridosSSTF(TNodoPedido *,pistaSector ,char*,int32_t *, int32_t *);
int32_t obtenerSectoresRecorridosFSCAN(TNodoPedido *,pistaSector ,char *,int32_t *, int32_t *);

int32_t obtenerCadena (char *, char*, int32_t);
char* obtenerModoInicio (void);
int32_t *obtenerIpRaid (void);
int32_t obtenerPuertoRaid();
void obtenerAlgoritmo (void);
char *obtenerPuertoConsola();
int32_t obtenerFlagLog();
char* obtenerNombreDisco (void);
int32_t *obtenerCHS();
int32_t obtenerTiempoLectura();
int32_t obtenerTiempoEscritura();
int32_t obtenerRPM();
int32_t obtenerTiempoEntrePistas();
int32_t obtenerPistaActual();
int32_t obtenerSectorActual();
char obtenerMovimientoCabezal (void);
int32_t *obtenerIpPpd(void);
int32_t obtenerPuertoTcp();
int32_t rutaDelDisco();
int32_t funRutaEjecutableDisco();
void armarInfoPedidoLog(char*, TNodoPedido*, pistaSector);



#endif /* PPD_FUNCIONES_H_ */
